/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.opgea.qms.dao;

import com.opgea.qms.domain.entities.Token;
import com.opgea.qms.domain.qualifiers.TokenStatusQualifier;
import java.util.Date;
import java.util.List;

/**
 *
 * @author Ramesh
 */
public interface TokenDAO {

    public Integer getMaxTokenNumber(Long companyId, String dateString);
    public Token create(Token token);
    public Token update(Token token);
    public Token find(Long id);
    public Token findByTokenNo(Long companyId, Integer tokenNo, Date date);
    public Token findAll();
    public List<Token> findAll(Long companyId, Date date);
    public List<Token> findAllByStatus(Long companyId, Date date, TokenStatusQualifier qualifier);
    public List<Token> findTokensInQueue(Long companyId, Integer tokenNo);
}
